//
//  YHNSFileManager.h
//  SCOffers
//  (文件管理类）
//  Created by kevin on 14-10-16.
//  Copyright (c) 2014年 kevin. All rights reserved.
//

#import <Foundation/Foundation.h>
//目录类型
typedef NS_ENUM(NSInteger, FileDirectoryType){
    FILEDIRECTORY_TYPE_HOME, //获取程序的Home目录
    FILEDIRECTORY_TYPE_DOCUMENT,//获取document目录
    FILEDIRECTORY_TYPE_CACHE, //获取Cache目录
    FILEDIRECTORY_TYPE_LIBRARY,//获取Library目录
    FILEDIRECTORY_TYPE_TMP, //获取Tmp目录
};

//文件数据结构
typedef NS_ENUM(NSInteger, FileDataType) {
    FILEDATA_TYPE_DATA, //NSData NSMutableData类型
    FILEDATA_TYPE_ARRAY, //NSArray NSMutableArray 类型
    FILEDATA_TYPE_DICTIONARY, //NSDictionary NSMutableDictionary类型
};

@interface YBKFileManager : NSObject
//获取根目录路径
+(NSString*)rootDirectoryPath:(FileDirectoryType)type;
//获取文件路径
+(NSString*)filePath:(FileDirectoryType)type directoryName:(NSString*)dirName fileName:(NSString*)name;
//创建目录 type:目录类型  name: 目录名字
+(BOOL)createFileDirectory:(FileDirectoryType)type directoryName:(NSString*)name;
//创建文件 type:根目录类型  directoryName:子目录名  name: 文件名字
+(BOOL)createFile:(FileDirectoryType)type childDirectoryName:(NSString*)directoryName fileName:(NSString*)name;

/*
 //dirType 根目录类型
//写文件 dirName 目录名 (dirName == nil) 根目录
 fName 文件名
 type   文件数据类型
 object  数据
 */
+(BOOL)writeFileData:(FileDirectoryType)dirType directoryName:(NSString*)dirName fileName:(NSString*)fName fileDataType:(FileDataType)type dataObject:(id)object;
//读取文件
+(id)readFileData:(FileDirectoryType)dirType directoryName:(NSString*)dirName fileName:(NSString*)fName fileDataType:(FileDataType)type;
+(id)readmainBundleFileData:(NSString*)fileName fileDataType:(FileDataType)type;
@end
